第一次參賽,相關內容有誤還請多多提醒,如果寫的不好,也可以留言討論
想抓甚麼資料
如何整理、分類
如何記錄
如何運用
拿我目前在使用的架構來說明,下面會分成六大模組協同運作,各司其職且低耦合:
┌────────────────┐
│ config.py │ (環境變數、時區、排程開關)
└───────┬────────┘
│ 注入設定
▼
┌────────────────┐
│ main.py │ ◄─── (流程指揮官 / Orchestrator)
└───────┬────────┘
並行調度 │ 調用分析與狀態存取
┌─────────────────┼─────────────────┐
▼ ▼ ▼
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ fetchers.py │ │ processor.py │ │ utils.py │
│ (多來源爬蟲) │ │ (邏輯分析引擎)│ │ (視覺化/I/O) │
└──────────────┘ └───────┬──────┘ └───────┬──────┘
│ 讀取字典 │ 讀寫狀態
▼ ▼
┌──────────────┐ ┌──────────────┐
│ keywords.py │ │last_seen.json│
│ (威脅評分引擎)│ │ (狀態快照) │
└──────────────┘ └──────────────┘
main.py (流程指揮官 / Pipeline Orchestrator)concurrent.futures.ThreadPoolExecutor 同時啟動所有啟用的爬蟲任務,打破過去循序等待的瓶頸。last_seen.json 載入為記憶體中的雜湊集合(Hash Set),實現毫秒級去重,並於批次內防止跨來源重複情資。processor.py (邏輯分析引擎 / Risk Engine)\b 精確比對英文縮寫,確保 rce 不會被 salesforce 誤觸發,ad 不會被 broadcast 誤觸發。evaluate_threat_score,T1 ~ T4 最高 10 分)。keywords.py (威脅評分引擎 / Domain Knowledge Base)CRITICAL_EQUIPMENT:定義防護邊界(VPN、防火牆、AD 域控、虛擬化主機、NAS)。EQUIPMENT_CRITICAL_THREATS:定義針對設備的毀滅性操作關鍵詞(RCE、身分繞過、逃逸、在野利用)。FINANCE_KEYWORDS:定義金管會、SWIFT、聯徵、ATM、核心帳務等強金融屬性詞。IMPORTANCE_WEIGHTS:劃分 Tier 1(10分)至 Tier 4(2分)的漏洞技術特徵。fetchers.py (爬蟲模組 / Ingestion Layer)feedparser 快速解析 RSS,作為日常威脅與專家日報的即時情報源。utils.py (輔助服務與視覺化產出 / Utility & Presentation)config.py 中的 REPORT_STYLE 支援三種呈現樣式:TABLE(傳統精緻表格,適合桌面端排查)CARDS(現代儀表板卡片,適合重點掃描)TIMELINE(科技串流,適合行動裝置閱讀)get_tag_style):依情資等級自動套用高對比色票(深鮮紅、亮紅、橘黃、紫色、藍色、石板灰)。config.py (全域組態 / Configuration)ENABLED_SOURCES)與認證密鑰。